package com.zhuiwei.initialization;

/**
 * 可以变参数列表
 * object类型的参数列表
 * @author zhuiwei
 * @see 《java编程思想 第四版》5.8.1
 */


public class NewVarArgs {
  static void printArray(Object... args) {
    for(Object obj : args)
      System.out.print(obj + " ");
    System.out.println();
  }

  public static void main(String[] args) {
    // 支持单个元素
    printArray(new Integer(47), new Float(3.14), new Double(11.11));
    printArray(47, 3.14F, 11.11);
    printArray("one", "two", "three");
    printArray(new A(), new A(), new A());
    // 支持数组
    printArray((Object[])new Integer[]{ 1, 2, 3, 4 }); //⑤
    //空数组也可以
    printArray();
  }
}

/*
输出结果: (75% match)
47 3.14 11.11
47 3.14 11.11
one two three
A@1bab50a A@c3c749 A@150bd4d
1 2 3 4
*/

/**
 * 说明：
 * ⑤的(Object[])转换是为了取消警告
 */
